 

package com.zdkj.subway.stm.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.zdkj.subway.stm.dto.in.CommomConfirmInfoDTO;
import com.zdkj.subway.stm.dto.out.SwStTicketPettyAddDTO;
import com.zdkj.subway.stm.entity.SwStTicketPettyAdd;

import java.util.List;
import java.util.Map;

/**
 * 车站配票与配备用金
 *
 * @author songtuo
 * @date 2020-07-09 14:14:41
 */
public interface SwStTicketPettyAddService extends IService<SwStTicketPettyAdd> {

    /**
     * 首次新增备用金详情
     * @param swStTicketPettyAddDTO
     * @return
     */
    boolean saveSwStTicketPettyAdd(SwStTicketPettyAddDTO swStTicketPettyAddDTO);

    /**
     * 更新备用金详情
     * @param swStTicketPettyAddDTO
     * @return
     */
    boolean updateSwStTicketPettyAdd(SwStTicketPettyAddDTO swStTicketPettyAddDTO);

    /**
     * 级联删除
     * @param id
     * @return
     */
    boolean deleteCascadeById(Integer id);

    /**
     * 查看详情  用于回显预览
     * @param id
     * @return
     */
    SwStTicketPettyAddDTO queryDetailsByid(Integer id);

    /**
     * 新增备用金以及车票
     */
    boolean addCashAndTicket(SwStTicketPettyAddDTO stTicketPettyAddDTO);

    /**
     * 归还备用金及车票
     */
    boolean returnCashAndTickt(SwStTicketPettyAddDTO stTicketPettyAddDTO);

    /**
     * 查询待确认的车票备用金信息
     */
    SwStTicketPettyAddDTO queryNeedToConfirmData(CommomConfirmInfoDTO confirmInfoDTO);

    /**
     * 确认车票备用金信息
     */
    boolean confirmData(Integer id);

    /**
     * 查询票种
     */
    List<Map<String,String>> queryTicketType(Integer relationId);


    boolean saveTicketPettyDataEntryLog(SwStTicketPettyAddDTO swStTicketPettyAddDTO,Integer saveFlag);
}
